/**********************************************************************
* $Id$		abstract.txt 			
*//**
* @file		abstract.txt 
* @brief	Example description file
* @version	2.0
* @date		
* @author	NXP MCU SW Application Team/Micromint USA Support
*
* Copyright(C) 2010, NXP Semiconductor
* All rights reserved.
*
***********************************************************************
* Software that is described herein is for illustrative purposes only
* which provides customers with programming information regarding the
* products. This software is supplied "AS IS" without any warranties.
* NXP Semiconductors assumes no responsibility or liability for the
* use of the software, conveys no license or title under any patent,
* copyright, or mask work right to the product. NXP Semiconductors
* reserves the right to make changes in the software without
* notification. NXP Semiconductors also make no representation or
* warranty that such application will be suitable for the specified
* use without further testing or modification.
**********************************************************************/
  
@Example description:
Purpose:
	This example describes how to use USBDEV on Lincoln 60 to demo the 
        virtual COM port.
	
        Process:	                                                 
	  Clock Settings:
	     - XTAL                   =  12 MHz
	     - PLL                    =  400 MHz
	     - processor clock = CCLK =  100 MHz
	     - USB clock              =  48 MHz
	     - CCLK / 4 clock         =  25 MHz
		
	The PC will install a virtual COM port on the PC (see Driver 
        Installation). After installation an additional port "LPC17xx USB VCom 
        Port(COMx)" can be found under System/Hardware/Device Manager/Ports
        (COM&LPT). Number "x" is not fixed as different PC configuration may 
        have different "x" displayed on the device manager. The USB host driver 
        assigns "x" dynamically based on the existing COM port configuration of 
        the system.
		
	Testing the USB Virtual COM port with serial cable:

  	Open two Terminal windows. 
      	One with the "LPC17xx USB VCom Port(COMx)" 
      	One with "Communications Port (COM1)".
  	Connect PC port COM1 to the comport on the board and open "COM1" 
  	and "COMx". Data from COM1 will be echoed on "COMx" and visa versa. 
  	So, this is bi-directional communication between the physical COM
  	port 0 or 1 on the board and the virtual COM port COMx on host PC.
  	By default, COM1 on the board is used for VirtualCOM port test.
  	In order to use COM2 on the board, modify the definition PORT_NUM
  	from 0 to 1 in serial.h, recompile and reprogram the flash.      
		
@Driver Installation:
     "Welcome to the Found New Hardware Wizard" appears
     - select 'No, not this time'
     - press  'Next'

     - select 'Install from a list or specific location (Advanced)'
     - press  'Next'

     - select 'Search for the best driver in these locations'
     - check  'include this location in the serach'
     - set to <project folder>
     - press 'Next'

     "Hardware Installation" appears
     "has not passed Windows Logo testing..."
     - press 'Continue Anyway'

     "Completing the Found New Hardware Wizard" appears
     - press 'Finish'
     		
@Directory contents:
	\EWARM: includes EWARM (IAR) project and configuration files
	\Keil:	includes RVMDK (Keil)project and configuration files 
	
	cdc.h: USB CDC (Communication Device) Definitions
	cdcuser.h/.c: USB Communication Device Class User module
	lpc17xx_libcfg.h: Library configuration file - include needed driver 
                          library for this example 
	serial.h/.c: serial port handling for LPC17xx
	usb.h:  USB Definitions
	usbcfg.h: USB Custom Configuration
	usbcore.h/.c: USB Core Module
	usbdesc.h/.c: USB Descriptors
	usbhw.h/.c: SB Hardware Layer Module
	usbreg.h: USB Hardware Layer Definitions for NXP Semiconductors LPC 
	usbuser.h/.c: USB Custom User Module
	vcomdemo.h/.c: main program	
	makefile: Example's makefile (to build with GNU toolchain)
	lpc17xx-vom.inf: driver info for VCOM LPC17xx (used when Windows 
                         requires install driver)

@How to run:
	
Hardware configuration:		
	These jumpers must be configured as following:
			- JP2 pin 3 and 5 (DEVICE)
			- JP2 pin 4 and 6 (DEVICE)
Running mode:
This example can run on RAM/ROM mode.
					
(Please reference "LPC1000 Software Development Toolchain" - chapter 4 "Creating 
and working with LPC1000CMSIS project" for more information)
	
Step to run:
	- Step 1: Build example.
	- Step 2: Burn hex file into board (if run on ROM mode)
	- Step 3: Configure hardware as above instruction 
	- Step 4: Hit reset button to run example. (install driver if required)
	- Step 5: After see USER LED1on board turn on, open Device Manager > 
                  Ports (COM & LPT) see if "LPC17xx USB Vcom Port (COMx)" 
                  appears or not. 
	- Step 6: Open one HyperTerminal for COM1 and other for COMx with below 
                  configuration:
				- 115200 bps
				- 8 data bits
				- none parity
				- 1 stop bit
				- None flow control
	- Step 7: Sure that you already connected COM1 port on board with PC. 
                  Type any character on	one Terminal screen and see this 
                  character be echoed in other screen and vice versa 
	
(Pls see "LPC17xx Example Description" document - chapter "Examples > USBDEV > 
USBCDC"	for more details)
		
@Tip:
	- Open \EWARM\*.eww project file to run example on IAR
	- Open \RVMDK\*.uvproj project file to run example on Keil